home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 15 / BBS in a box XV-1.iso / Files / Educ / Calc / MathPad 2.35.sit / XFuns / XFun kit / XFun.doc < prev    next >
MacBinary  |  1995-04-29  |  9.3 KB  |  [TEXT/MPad]

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: MacBinary (archive/macBinary).

You can browse this item here: XFun.doc

ConfidenceProgramDetectionMatch TypeSupport
10% dexvert MacBinary (archive/macBinary) fallback Supported
1% dexvert WANG Integrated Word Processor (document/wangIWP) ext Unsupported
1% dexvert Dynamic Publisher Document (document/dynamicPublisherDocument) ext Unsupported
1% dexvert Excellence! Document (document/excellenceDocument) ext Unsupported
1% dexvert Norton Textra Writer (document/textraWriter) ext Unsupported
1% dexvert IBM DisplayWrite Document (document/ibmDisplayWriteDocument) ext Unsupported
1% dexvert Text File (text/txt) fallback Supported
100% file MacBinary II, inited, Sat Apr 29 17:32:18 1995, modified Sat Apr 29 17:32:18 1995, creator 'MPad', type ASCII, 8762 bytes "XFun.doc" , at 0x22ba 398 bytes resource default (weak)
99% file data default
74% TrID Macintosh plain text (MacBinary) default
25% TrID MacBinary 2 default (weak)
100% siegfried fmt/1762 MacBinary (II) default
100% lsar MacBinary default


id metadata
keyvalue
macFileType[TEXT]
macFileCreator[MPad]



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 08 58 46 75 6e 2e 64 | 6f 63 00 00 00 00 00 00 |..XFun.d|oc......|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4d 50 61 | 64 01 00 00 00 00 00 00 |.TEXTMPa|d.......|
|00000050| 00 00 00 00 00 22 3a 00 | 00 01 8e ab c8 60 e2 ab |.....":.|.....`..|
|00000060| c8 60 e2 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |.`......|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 12 c6 00 00 |........|........|
|00000080| 4d 61 74 68 50 61 64 20 | 58 46 75 6e 73 20 61 6c |MathPad |XFuns al|
|00000090| 6c 6f 77 20 65 78 74 65 | 72 6e 61 6c 6c 79 20 63 |low exte|rnally c|
|000000a0| 6f 6d 70 69 6c 65 64 20 | 66 75 6e 63 74 69 6f 6e |ompiled |function|
|000000b0| 73 20 74 6f 20 62 65 20 | 61 64 64 65 64 20 74 6f |s to be |added to|
|000000c0| 20 74 68 65 20 46 75 6e | 63 74 69 6f 6e 73 20 6d | the Fun|ctions m|
|000000d0| 65 6e 75 2e 0d 0d 54 68 | 65 20 78 66 75 6e 20 6b |enu...Th|e xfun k|
|000000e0| 69 74 20 63 6f 6e 74 61 | 69 6e 73 20 65 78 61 6d |it conta|ins exam|
|000000f0| 70 6c 65 20 54 68 69 6e | 6b 20 43 20 35 2e 30 20 |ple Thin|k C 5.0 |
|00000100| 70 72 6f 6a 65 63 74 73 | 20 66 6f 72 20 63 72 65 |projects| for cre|
|00000110| 61 74 69 6e 67 20 58 46 | 75 6e 73 2e 20 50 72 65 |ating XF|uns. Pre|
|00000120| 73 75 6d 61 62 6c 79 20 | 6e 65 77 65 72 20 76 65 |sumably |newer ve|
|00000130| 72 73 69 6f 6e 73 20 6f | 66 20 54 68 69 6e 6b 20 |rsions o|f Think |
|00000140| 43 20 6f 72 20 6f 74 68 | 65 72 20 64 65 76 65 6c |C or oth|er devel|
|00000150| 6f 70 6d 65 6e 74 20 73 | 79 73 74 65 6d 73 20 73 |opment s|ystems s|
|00000160| 68 6f 75 6c 64 20 62 65 | 20 61 62 6c 65 20 74 6f |hould be| able to|
|00000170| 20 63 72 65 61 74 65 20 | 58 66 75 6e 73 20 61 73 | create |Xfuns as|
|00000180| 20 77 65 6c 6c 2e 0d 0d | 57 68 65 6e 20 4d 61 74 | well...|When Mat|
|00000190| 68 50 61 64 20 69 73 20 | 6c 61 75 6e 63 68 65 64 |hPad is |launched|
|000001a0| 20 69 74 20 63 68 65 63 | 6b 73 20 66 6f 72 20 58 | it chec|ks for X|
|000001b0| 46 75 6e 20 66 69 6c 65 | 73 20 69 6e 20 74 68 65 |Fun file|s in the|
|000001c0| 20 73 61 6d 65 20 66 6f | 6c 64 65 72 20 61 73 20 | same fo|lder as |
|000001d0| 74 68 65 20 61 70 70 6c | 69 63 61 74 69 6f 6e 2e |the appl|ication.|
|000001e0| 20 41 6e 79 20 27 58 46 | 75 6e 27 20 63 6f 64 65 | Any 'XF|un' code|
|000001f0| 20 72 65 73 6f 75 72 63 | 65 73 20 61 72 65 20 6c | resourc|es are l|
|00000200| 6f 61 64 65 64 20 69 6e | 2e 0d 0d 54 6f 20 74 72 |oaded in|...To tr|
|00000210| 79 20 61 6e 20 58 46 75 | 6e 20 66 69 6c 65 2c 20 |y an XFu|n file, |
|00000220| 64 72 61 67 20 69 74 20 | 69 6e 74 6f 20 74 68 65 |drag it |into the|
|00000230| 20 66 6f 6c 64 65 72 20 | 63 6f 6e 74 61 69 6e 69 | folder |containi|
|00000240| 6e 67 20 74 68 65 20 4d | 61 74 68 50 61 64 20 61 |ng the M|athPad a|
|00000250| 70 70 6c 69 63 61 74 69 | 6f 6e 2e 20 28 49 66 20 |pplicati|on. (If |
|00000260| 4d 61 74 68 50 61 64 20 | 69 73 20 61 6c 72 65 61 |MathPad |is alrea|
|00000270| 64 79 20 72 75 6e 6e 69 | 6e 67 20 79 6f 75 20 6d |dy runni|ng you m|
|00000280| 75 73 74 20 71 75 69 74 | 20 61 6e 64 20 72 65 2d |ust quit| and re-|
|00000290| 6c 61 75 6e 63 68 20 69 | 74 20 74 6f 20 73 65 65 |launch i|t to see|
|000002a0| 20 74 68 65 20 58 46 75 | 6e 29 2e 20 0d 0d 41 6e | the XFu|n). ..An|
|000002b0| 79 20 6e 61 6d 65 64 20 | 27 54 45 58 54 27 20 72 |y named |'TEXT' r|
|000002c0| 65 73 6f 75 72 63 65 73 | 20 69 6e 20 58 46 75 6e |esources| in XFun|
|000002d0| 20 66 69 6c 65 73 20 61 | 72 65 20 61 64 64 65 64 | files a|re added|
|000002e0| 20 74 6f 20 4d 61 74 68 | 50 61 64 27 73 20 48 65 | to Math|Pad's He|
|000002f0| 6c 70 20 20 6d 65 6e 75 | 2e 20 54 68 65 20 72 65 |lp menu|. The re|
|00000300| 73 6f 75 72 63 65 20 6e | 61 6d 65 20 69 73 20 75 |source n|ame is u|
|00000310| 73 65 64 20 61 73 20 74 | 68 65 20 6d 65 6e 75 20 |sed as t|he menu |
|00000320| 69 74 65 6d 2e 20 57 68 | 65 6e 20 74 68 65 20 6d |item. Wh|en the m|
|00000330| 65 6e 75 20 69 74 65 6d | 20 69 73 20 73 65 6c 65 |enu item| is sele|
|00000340| 63 74 65 64 2c 20 61 20 | 77 69 6e 64 6f 77 20 77 |cted, a |window w|
|00000350| 69 74 68 20 74 68 65 20 | 68 65 6c 70 20 74 65 78 |ith the |help tex|
|00000360| 74 20 77 69 6c 6c 20 62 | 65 20 6f 70 65 6e 65 64 |t will b|e opened|
|00000370| 2e 20 54 68 69 73 20 61 | 6c 6c 6f 77 73 20 58 46 |. This a|llows XF|
|00000380| 75 6e 20 66 69 6c 65 73 | 20 74 6f 20 70 72 6f 76 |un files| to prov|
|00000390| 69 64 65 20 68 65 6c 70 | 20 69 6e 66 6f 20 61 62 |ide help| info ab|
|000003a0| 6f 75 74 20 74 68 65 20 | 66 75 6e 63 74 69 6f 6e |out the |function|
|000003b0| 73 20 74 68 65 79 20 64 | 65 66 69 6e 65 2e 0d 0d |s they d|efine...|
|000003c0| 58 46 75 6e 20 66 69 6c | 65 73 20 61 72 65 20 6f |XFun fil|es are o|
|000003d0| 66 20 74 79 70 65 20 27 | 58 46 75 6e 27 20 61 6e |f type '|XFun' an|
|000003e0| 64 20 63 72 65 61 74 6f | 72 20 27 4d 50 61 64 27 |d creato|r 'MPad'|
|000003f0| 2e 20 54 68 65 20 72 65 | 73 6f 75 72 63 65 20 66 |. The re|source f|
|00000400| 6f 72 6b 20 63 6f 6e 74 | 61 69 6e 73 20 6f 6e 65 |ork cont|ains one|
|00000410| 20 6f 72 20 6d 6f 72 65 | 20 63 6f 64 65 20 72 65 | or more| code re|
|00000420| 73 6f 75 72 63 65 73 20 | 6f 66 20 74 79 70 65 20 |sources |of type |
|00000430| 27 58 46 75 6e 27 2e 20 | 49 6e 20 54 68 69 6e 6b |'XFun'. |In Think|
|00000440| 20 43 20 35 2e 30 20 79 | 6f 75 20 73 69 6d 70 6c | C 5.0 y|ou simpl|
|00000450| 79 20 63 68 6f 6f 73 65 | 20 22 43 6f 64 65 20 52 |y choose| "Code R|
|00000460| 65 73 6f 75 72 63 65 22 | 20 61 6e 64 20 66 69 6c |esource"| and fil|
|00000470| 6c 20 69 6e 20 74 68 65 | 20 69 6e 66 6f 72 6d 61 |l in the| informa|
|00000480| 74 69 6f 6e 20 69 6e 20 | 74 68 65 20 22 53 65 74 |tion in |the "Set|
|00000490| 20 50 72 6f 6a 65 63 74 | 20 54 79 70 65 22 20 64 | Project| Type" d|
|000004a0| 69 61 6c 6f 67 2e 20 41 | 6e 79 20 68 65 6c 70 20 |ialog. A|ny help |
|000004b0| 74 65 78 74 20 73 68 6f | 75 6c 64 20 62 65 20 70 |text sho|uld be p|
|000004c0| 75 74 20 69 6e 74 6f 20 | 61 6e 20 61 73 73 6f 63 |ut into |an assoc|
|000004d0| 69 61 74 65 64 20 2e 72 | 73 72 63 20 66 69 6c 65 |iated .r|src file|
|000004e0| 20 73 6f 20 69 74 20 77 | 69 6c 6c 20 62 65 20 63 | so it w|ill be c|
|000004f0| 6f 70 69 65 64 20 69 6e | 74 6f 20 74 68 65 20 63 |opied in|to the c|
|00000500| 6f 6d 70 69 6c 65 64 20 | 63 6f 64 65 20 72 65 73 |ompiled |code res|
|00000510| 6f 75 72 63 65 20 66 69 | 6c 65 2e 0d 0d 4d 61 74 |ource fi|le...Mat|
|00000520| 68 50 61 64 20 64 6f 65 | 73 20 61 20 63 61 6c 6c |hPad doe|s a call|
|00000530| 20 74 6f 20 74 68 65 20 | 62 65 67 69 6e 6e 69 6e | to the |beginnin|
|00000540| 67 20 6f 66 20 74 68 65 | 20 63 6f 64 65 20 72 65 |g of the| code re|
|00000550| 73 6f 75 72 63 65 20 6f | 6e 20 61 70 70 6c 69 63 |source o|n applic|
|00000560| 61 74 69 6f 6e 20 73 74 | 61 72 74 75 70 2e 20 49 |ation st|artup. I|
|00000570| 6e 20 54 68 69 6e 6b 20 | 43 2c 20 74 68 65 20 72 |n Think |C, the r|
|00000580| 65 73 6f 75 72 63 65 20 | 68 65 61 64 65 72 20 74 |esource |header t|
|00000590| 68 65 6e 20 63 61 6c 6c | 73 20 6d 61 69 6e 28 29 |hen call|s main()|
|000005a0| 2e 20 54 68 65 20 70 61 | 72 61 6d 65 74 65 72 20 |. The pa|rameter |
|000005b0| 74 6f 20 6d 61 69 6e 28 | 29 20 69 73 20 61 20 63 |to main(|) is a c|
|000005c0| 61 6c 6c 62 61 63 6b 20 | 66 75 6e 63 74 69 6f 6e |allback |function|
|000005d0| 20 70 6f 69 6e 74 65 72 | 2e 20 54 68 65 20 6d 61 | pointer|. The ma|
|000005e0| 69 6e 28 29 20 72 6f 75 | 74 69 6e 65 20 69 73 20 |in() rou|tine is |
|000005f0| 75 73 65 64 20 74 6f 20 | 70 65 72 66 6f 72 6d 20 |used to |perform |
|00000600| 61 6e 79 20 69 6e 69 74 | 69 61 6c 69 7a 61 74 69 |any init|ializati|
|00000610| 6f 6e 20 6e 65 65 64 65 | 64 2e 20 55 73 75 61 6c |on neede|d. Usual|
|00000620| 6c 79 20 61 6c 6c 20 69 | 74 20 64 6f 65 73 20 69 |ly all i|t does i|
|00000630| 73 20 75 73 65 20 74 68 | 65 20 63 61 6c 6c 62 61 |s use th|e callba|
|00000640| 63 6b 0d 20 20 41 64 64 | 58 66 75 6e 28 63 68 61 |ck. Add|Xfun(cha|
|00000650| 72 20 2a 6e 61 6d 65 2c | 63 68 61 72 20 2a 70 61 |r *name,|char *pa|
|00000660| 72 6d 73 2c 66 75 6e 70 | 74 72 20 65 6e 74 72 79 |rms,funp|tr entry|
|00000670| 2c 66 75 6e 70 74 72 20 | 70 72 65 64 65 66 2c 2e |,funptr |predef,.|
|00000680| 2e 2e 29 0d 74 6f 20 69 | 6e 73 74 61 6c 6c 20 74 |..).to i|nstall t|
|00000690| 68 65 20 66 75 6e 63 74 | 69 6f 6e 20 69 6e 20 4d |he funct|ion in M|
|000006a0| 61 74 68 50 61 64 2e 20 | 54 68 65 20 22 6e 61 6d |athPad. |The "nam|
|000006b0| 65 22 20 73 74 72 69 6e | 67 20 67 69 76 65 73 20 |e" strin|g gives |
|000006c0| 74 68 65 20 6e 61 6d 65 | 20 74 68 61 74 20 20 4d |the name| that M|
|000006d0| 61 74 68 50 61 64 20 77 | 69 6c 6c 20 75 73 65 20 |athPad w|ill use |
|000006e0| 66 6f 72 20 74 68 65 20 | 6e 65 77 20 66 75 6e 63 |for the |new func|
|000006f0| 74 69 6f 6e 2e 20 54 68 | 65 20 22 70 61 72 6d 73 |tion. Th|e "parms|
|00000700| 22 20 73 74 72 69 6e 67 | 20 67 69 76 65 73 20 61 |" string| gives a|
|00000710| 20 66 6f 72 6d 61 6c 20 | 70 61 72 61 6d 65 74 65 | formal |paramete|
|00000720| 72 20 6c 69 73 74 2e 20 | 54 68 69 73 20 70 61 72 |r list. |This par|
|00000730| 61 6d 65 74 65 72 20 6c | 69 73 74 20 61 70 70 65 |ameter l|ist appe|
|00000740| 61 72 73 20 69 6e 20 74 | 68 65 20 6d 65 6e 75 20 |ars in t|he menu |
|00000750| 61 6e 64 20 69 73 20 75 | 73 65 64 20 74 6f 20 63 |and is u|sed to c|
|00000760| 68 65 63 6b 20 66 6f 72 | 20 74 68 65 20 63 6f 72 |heck for| the cor|
|00000770| 72 65 63 74 20 6e 75 6d | 62 65 72 20 6f 66 20 70 |rect num|ber of p|
|00000780| 61 72 61 6d 65 74 65 72 | 73 2e 20 54 68 65 20 22 |arameter|s. The "|
|00000790| 65 6e 74 72 79 22 20 70 | 6f 69 6e 74 65 72 20 70 |entry" p|ointer p|
|000007a0| 6f 69 6e 74 73 20 74 6f | 20 74 68 65 20 63 6f 64 |oints to| the cod|
|000007b0| 65 20 66 6f 72 20 74 68 | 65 20 6e 65 77 20 66 75 |e for th|e new fu|
|000007c0| 6e 63 74 69 6f 6e 2e 20 | 4d 61 74 68 50 61 64 20 |nction. |MathPad |
|000007d0| 77 69 6c 6c 20 63 61 6c | 6c 20 74 68 65 20 66 75 |will cal|l the fu|
|000007e0| 6e 63 74 69 6f 6e 20 61 | 74 20 22 65 6e 74 72 79 |nction a|t "entry|
|000007f0| 22 20 65 61 63 68 20 74 | 69 6d 65 20 69 74 20 6e |" each t|ime it n|
|00000800| 65 65 64 73 20 74 6f 20 | 65 76 61 6c 75 61 74 65 |eeds to |evaluate|
|00000810| 20 74 68 65 20 65 78 74 | 65 72 6e 61 6c 20 66 75 | the ext|ernal fu|
|00000820| 6e 63 74 69 6f 6e 2e 20 | 54 68 65 20 22 70 72 65 |nction. |The "pre|
|00000830| 64 65 66 22 20 70 6f 69 | 6e 74 65 72 20 70 6f 69 |def" poi|nter poi|
|00000840| 6e 74 73 20 74 6f 20 61 | 20 66 75 6e 63 74 69 6f |nts to a| functio|
|00000850| 6e 20 74 68 61 74 20 77 | 69 6c 6c 20 62 65 20 63 |n that w|ill be c|
|00000860| 61 6c 6c 65 64 20 65 61 | 63 68 20 74 69 6d 65 20 |alled ea|ch time |
|00000870| 74 68 65 20 64 6f 63 75 | 6d 65 6e 74 20 69 73 20 |the docu|ment is |
|00000880| 72 65 65 76 61 6c 75 61 | 74 65 64 2e 20 49 66 20 |reevalua|ted. If |
|00000890| 79 6f 75 20 64 6f 20 6e | 6f 74 20 6e 65 65 64 20 |you do n|ot need |
|000008a0| 74 68 69 73 20 68 6f 6f | 6b 2c 20 70 61 73 73 20 |this hoo|k, pass |
|000008b0| 4e 55 4c 4c 2e 0d 0d 57 | 68 65 6e 20 61 6e 20 65 |NULL...W|hen an e|
|000008c0| 78 74 65 72 6e 61 6c 20 | 66 75 6e 63 74 69 6f 6e |xternal |function|
|000008d0| 20 69 73 20 65 76 61 6c | 75 61 74 65 64 20 62 79 | is eval|uated by|
|000008e0| 20 4d 61 74 68 70 61 64 | 2c 20 74 68 65 20 63 6f | Mathpad|, the co|
|000008f0| 64 65 20 72 65 73 6f 75 | 72 63 65 27 73 20 69 6e |de resou|rce's in|
|00000900| 73 74 61 6c 6c 65 64 20 | 66 75 6e 63 74 69 6f 6e |stalled |function|
|00000910| 20 69 73 20 63 61 6c 6c | 65 64 20 77 69 74 68 20 | is call|ed with |
|00000920| 74 77 6f 20 70 61 72 61 | 6d 65 74 65 72 73 2c 20 |two para|meters, |
|00000930| 61 20 70 6f 69 6e 74 65 | 72 20 74 6f 20 61 20 65 |a pointe|r to a e|
|00000940| 78 74 65 6e 64 65 64 20 | 66 6f 72 20 74 68 65 20 |xtended |for the |
|00000950| 6e 75 6d 65 72 69 63 20 | 72 65 73 75 6c 74 20 61 |numeric |result a|
|00000960| 6e 64 20 74 68 65 20 63 | 61 6c 6c 62 61 63 6b 20 |nd the c|allback |
|00000970| 65 6e 74 72 79 20 70 6f | 69 6e 74 2e 20 54 68 65 |entry po|int. The|
|00000980| 20 66 75 6e 63 74 69 6f | 6e 20 73 68 6f 75 6c 64 | functio|n should|
|00000990| 20 73 74 6f 72 65 20 69 | 74 73 20 72 65 73 75 6c | store i|ts resul|
|000009a0| 74 20 61 6e 64 20 72 65 | 74 75 72 6e 20 54 52 55 |t and re|turn TRU|
|000009b0| 45 2e 20 49 66 20 74 68 | 65 20 72 65 73 75 6c 74 |E. If th|e result|
|000009c0| 20 63 61 6e 20 6e 6f 74 | 20 62 65 20 63 61 6c 63 | can not| be calc|
|000009d0| 75 6c 61 74 65 64 20 69 | 74 20 73 68 6f 75 6c 64 |ulated i|t should|
|000009e0| 20 72 65 74 75 72 6e 20 | 46 41 4c 53 45 2e 20 28 | return |FALSE. (|
|000009f0| 54 68 65 20 66 75 6e 63 | 74 69 6f 6e 20 6d 61 79 |The func|tion may|
|00000a00| 20 61 6c 73 6f 20 72 65 | 74 75 72 6e 20 46 41 4c | also re|turn FAL|
|00000a10| 53 45 20 69 66 20 69 74 | 20 70 61 73 73 65 73 20 |SE if it| passes |
|00000a20| 62 61 63 6b 20 69 74 73 | 20 72 65 73 75 6c 74 73 |back its| results|
|00000a30| 20 69 6e 20 61 20 67 6c | 6f 62 61 6c 73 20 72 61 | in a gl|obals ra|
|00000a40| 74 68 65 72 20 74 68 61 | 6e 20 74 68 65 20 72 65 |ther tha|n the re|
|00000a50| 73 75 6c 74 20 70 61 72 | 61 6d 65 74 65 72 29 2e |sult par|ameter).|
|00000a60| 20 41 63 63 65 73 73 20 | 74 6f 20 74 68 65 20 4d | Access |to the M|
|00000a70| 61 74 68 50 61 64 20 61 | 63 74 75 61 6c 20 70 61 |athPad a|ctual pa|
|00000a80| 72 61 6d 65 74 65 72 73 | 20 69 73 20 76 69 61 20 |rameters| is via |
|00000a90| 63 61 6c 6c 62 61 63 6b | 20 72 6f 75 74 69 6e 65 |callback| routine|
|00000aa0| 73 2e 0d 0d 53 65 65 20 | 74 68 65 20 66 69 6c 65 |s...See |the file|
|00000ab0| 20 63 61 6c 6c 62 61 63 | 6b 2e 68 20 66 6f 72 20 | callbac|k.h for |
|00000ac0| 64 65 73 63 72 69 70 74 | 69 6f 6e 73 20 6f 66 20 |descript|ions of |
|00000ad0| 61 6c 6c 20 74 68 65 20 | 61 76 61 69 6c 61 62 6c |all the |availabl|
|00000ae0| 65 20 4d 61 74 68 50 61 | 64 20 63 61 6c 6c 62 61 |e MathPa|d callba|
|00000af0| 63 6b 20 72 6f 75 74 69 | 6e 65 73 2e 20 54 68 65 |ck routi|nes. The|
|00000b00| 20 66 69 6c 65 20 63 61 | 6c 6c 62 61 63 6b 2e 63 | file ca|llback.c|
|00000b10| 20 70 72 6f 76 69 64 65 | 73 20 69 6e 64 69 76 69 | provide|s indivi|
|00000b20| 64 75 61 6c 20 69 6e 74 | 65 72 66 61 63 65 20 72 |dual int|erface r|
|00000b30| 6f 75 74 69 6e 65 73 20 | 66 72 6f 6d 20 74 68 65 |outines |from the|
|00000b40| 20 73 69 6e 67 6c 65 20 | 63 61 6c 6c 62 61 63 6b | single |callback|
|00000b50| 20 65 6e 74 72 79 20 70 | 6f 69 6e 74 2e 0d 0d 45 | entry p|oint...E|
|00000b60| 78 74 65 72 6e 61 6c 20 | 66 75 6e 63 74 69 6f 6e |xternal |function|
|00000b70| 73 20 74 68 61 74 20 63 | 61 6c 63 75 6c 61 74 65 |s that c|alculate|
|00000b80| 20 61 20 73 69 6e 67 6c | 65 20 72 65 73 75 6c 74 | a singl|e result|
|00000b90| 20 62 61 73 65 64 20 6f | 6e 20 61 20 66 65 77 20 | based o|n a few |
|00000ba0| 6e 75 6d 65 72 69 63 20 | 70 61 72 61 6d 65 74 65 |numeric |paramete|
|00000bb0| 72 73 20 61 72 65 20 71 | 75 69 74 65 20 73 69 6d |rs are q|uite sim|
|00000bc0| 70 6c 65 20 61 6e 64 20 | 70 72 6f 62 61 62 6c 79 |ple and |probably|
|00000bd0| 20 6f 6e 6c 79 20 72 65 | 71 75 69 72 65 20 74 68 | only re|quire th|
|00000be0| 65 20 63 61 6c 6c 62 61 | 63 6b 0d 20 20 47 65 74 |e callba|ck. Get|
|00000bf0| 50 61 72 6d 56 61 6c 28 | 69 6e 74 20 6e 2c 65 78 |ParmVal(|int n,ex|
|00000c00| 74 65 6e 64 65 64 20 2a | 6e 75 6d 2c 66 75 6e 70 |tended *|num,funp|
|00000c10| 74 72 20 63 61 6c 6c 62 | 61 63 6b 29 0d 77 68 69 |tr callb|ack).whi|
|00000c20| 63 68 20 67 65 74 73 20 | 74 68 65 20 6e 75 6d 65 |ch gets |the nume|
|00000c30| 72 69 63 20 76 61 6c 75 | 65 20 6f 66 20 70 61 72 |ric valu|e of par|
|00000c40| 61 6d 65 74 65 72 20 6e | 2e 20 4d 61 74 68 50 61 |ameter n|. MathPa|
|00000c50| 64 20 6e 75 6d 62 65 72 | 73 20 69 74 73 20 70 61 |d number|s its pa|
|00000c60| 72 61 6d 65 74 65 72 73 | 20 69 6e 20 61 20 73 6c |rameters| in a sl|
|00000c70| 69 67 68 74 6c 79 20 6f | 62 74 75 73 65 20 6d 61 |ightly o|btuse ma|
|00000c80| 6e 6e 65 72 2e 20 50 61 | 72 61 6d 65 74 65 72 73 |nner. Pa|rameters|
|00000c90| 20 61 72 65 20 6e 75 6d | 62 65 72 65 64 20 66 72 | are num|bered fr|
|00000ca0| 6f 6d 20 72 69 67 68 74 | 20 74 6f 20 6c 65 66 74 |om right| to left|
|00000cb0| 20 73 74 61 72 74 69 6e | 67 20 77 69 74 68 20 30 | startin|g with 0|
|00000cc0| 2e 20 53 65 65 20 74 68 | 65 20 66 69 6c 65 20 64 |. See th|e file d|
|00000cd0| 69 76 2e 63 20 66 6f 72 | 20 61 6e 20 65 78 61 6d |iv.c for| an exam|
|00000ce0| 70 6c 65 20 6f 66 20 61 | 20 73 69 6d 70 6c 65 20 |ple of a| simple |
|00000cf0| 58 46 75 6e 2e 0d 0d 4f | 70 65 72 61 74 69 6e 67 |XFun...O|perating|
|00000d00| 20 6f 6e 20 61 72 72 61 | 79 73 20 69 6e 74 72 6f | on arra|ys intro|
|00000d10| 64 75 63 65 73 20 6d 6f | 72 65 20 63 6f 6d 70 6c |duces mo|re compl|
|00000d20| 69 63 61 74 69 6f 6e 2e | 20 4d 61 74 68 50 61 64 |ication.| MathPad|
|00000d30| 20 61 72 72 61 79 73 20 | 63 61 6e 20 68 61 76 65 | arrays |can have|
|00000d40| 20 61 6e 79 20 6e 75 6d | 62 65 72 20 6f 66 20 64 | any num|ber of d|
|00000d50| 69 6d 65 6e 73 69 6f 6e | 73 20 61 6e 64 20 63 61 |imension|s and ca|
|00000d60| 6e 20 62 65 20 61 6e 79 | 20 73 69 7a 65 2e 20 43 |n be any| size. C|
|00000d70| 61 6c 6c 62 61 63 6b 20 | 72 6f 75 74 69 6e 65 73 |allback |routines|
|00000d80| 20 61 72 65 20 70 72 6f | 76 69 64 65 64 20 74 6f | are pro|vided to|
|00000d90| 20 61 63 63 65 73 73 20 | 61 6e 64 20 6d 61 6e 69 | access |and mani|
|00000da0| 70 75 6c 61 74 65 20 4d | 61 74 68 50 61 64 27 73 |pulate M|athPad's|
|00000db0| 20 67 65 6e 65 72 61 6c | 20 65 78 70 72 65 73 73 | general| express|
|00000dc0| 69 6f 6e 20 73 74 72 75 | 63 74 75 72 65 2e 0d 54 |ion stru|cture..T|
|00000dd0| 68 65 20 63 61 6c 6c 62 | 61 63 6b 0d 20 20 4d 61 |he callb|ack. Ma|
|00000de0| 6b 65 50 61 72 6d 45 78 | 70 72 28 6c 6f 6e 67 20 |keParmEx|pr(long |
|00000df0| 6e 2c 45 58 50 52 20 2a | 78 70 72 2c 66 75 6e 70 |n,EXPR *|xpr,funp|
|00000e00| 74 72 20 63 61 6c 6c 62 | 61 63 6b 29 0d 6d 61 6b |tr callb|ack).mak|
|00000e10| 65 73 20 61 6e 20 65 78 | 70 72 65 73 73 69 6f 6e |es an ex|pression|
|00000e20| 20 73 74 72 75 63 74 75 | 72 65 20 66 6f 72 20 70 | structu|re for p|
|00000e30| 61 72 61 6d 65 74 65 72 | 20 6e 2e 20 44 65 74 61 |arameter| n. Deta|
|00000e40| 69 6c 73 20 6f 66 20 74 | 68 69 73 20 73 74 72 75 |ils of t|his stru|
|00000e50| 63 74 75 72 65 20 61 72 | 65 20 6e 6f 74 20 6e 65 |cture ar|e not ne|
|00000e60| 65 64 65 64 20 73 69 6e | 63 65 20 74 68 65 72 65 |eded sin|ce there|
|00000e70| 20 69 73 20 6e 6f 20 6e | 65 65 64 20 74 6f 20 61 | is no n|eed to a|
|00000e80| 63 63 65 73 73 20 69 74 | 20 64 69 72 65 63 74 6c |ccess it| directl|
|00000e90| 79 2e 20 54 68 65 20 65 | 78 70 72 65 73 73 69 6f |y. The e|xpressio|
|00000ea0| 6e 20 73 74 72 75 63 74 | 75 72 65 20 61 6c 6c 6f |n struct|ure allo|
|00000eb0| 63 61 74 65 64 20 62 79 | 20 4d 61 6b 65 50 61 72 |cated by| MakePar|
|00000ec0| 6d 45 78 70 72 28 29 20 | 6d 75 73 74 20 62 65 20 |mExpr() |must be |
|00000ed0| 64 65 61 6c 6c 6f 63 74 | 65 64 20 62 79 20 46 72 |dealloct|ed by Fr|
|00000ee0| 65 65 45 78 70 72 28 29 | 20 62 65 66 6f 72 65 20 |eeExpr()| before |
|00000ef0| 72 65 74 75 72 6e 69 6e | 67 2e 0d 0d 41 63 63 65 |returnin|g...Acce|
|00000f00| 73 73 69 6e 67 20 31 44 | 20 6f 72 20 32 44 20 61 |ssing 1D| or 2D a|
|00000f10| 72 72 61 79 73 20 69 73 | 20 65 61 73 69 65 73 74 |rrays is| easiest|
|00000f20| 2e 20 54 68 65 20 63 61 | 6c 6c 62 61 63 6b 0d 20 |. The ca|llback. |
|00000f30| 47 65 74 45 78 70 72 4d | 61 74 72 69 78 28 45 58 |GetExprM|atrix(EX|
|00000f40| 50 52 20 78 70 72 2c 65 | 78 74 65 6e 64 65 64 20 |PR xpr,e|xtended |
|00000f50| 2a 2a 6d 61 74 2c 6c 6f | 6e 67 20 2a 72 6f 77 73 |**mat,lo|ng *rows|
|00000f60| 2c 6c 6f 6e 67 20 2a 63 | 6f 6c 73 2c 2e 2e 2e 29 |,long *c|ols,...)|
|00000f70| 0d 61 6c 6c 6f 63 61 74 | 65 73 20 73 70 61 63 65 |.allocat|es space|
|00000f80| 20 66 6f 72 20 74 68 65 | 20 6d 61 74 72 69 78 2c | for the| matrix,|
|00000f90| 20 65 76 61 6c 75 61 74 | 65 73 20 61 6c 6c 20 6f | evaluat|es all o|
|00000fa0| 66 20 69 74 73 20 65 6c | 65 6d 65 6e 74 73 20 61 |f its el|ements a|
|00000fb0| 6e 64 20 70 61 73 73 65 | 73 20 62 61 63 6b 20 61 |nd passe|s back a|
|00000fc0| 20 70 6f 69 6e 74 65 72 | 20 74 6f 20 74 68 65 20 | pointer| to the |
|00000fd0| 61 6c 6c 6f 63 61 74 65 | 64 20 62 6c 6f 63 6b 2e |allocate|d block.|
|00000fe0| 20 41 6e 20 61 72 72 61 | 79 20 77 69 74 68 20 6d | An arra|y with m|
|00000ff0| 6f 72 65 20 74 68 61 6e | 20 32 20 64 69 6d 65 6e |ore than| 2 dimen|
|00001000| 73 69 6f 6e 73 20 77 69 | 6c 6c 20 67 65 6e 65 72 |sions wi|ll gener|
|00001010| 61 74 65 20 61 6e 20 65 | 72 72 6f 72 20 6d 65 73 |ate an e|rror mes|
|00001020| 73 61 67 65 20 61 6e 64 | 20 72 65 74 75 72 6e 20 |sage and| return |
|00001030| 66 61 6c 73 65 2e 20 54 | 68 65 20 6d 61 74 72 69 |false. T|he matri|
|00001040| 78 20 61 6c 6c 6f 63 61 | 74 65 64 20 62 79 20 47 |x alloca|ted by G|
|00001050| 65 74 45 78 70 72 4d 61 | 74 72 69 78 28 29 20 73 |etExprMa|trix() s|
|00001060| 68 6f 75 6c 64 20 62 65 | 20 64 65 61 6c 6c 6f 63 |hould be| dealloc|
|00001070| 61 74 65 64 20 77 69 74 | 68 20 44 69 73 70 6f 73 |ated wit|h Dispos|
|00001080| 50 74 72 28 29 2e 0d 0d | 46 6f 72 20 61 72 72 61 |Ptr()...|For arra|
|00001090| 79 73 20 6f 66 20 6d 6f | 72 65 20 74 68 61 6e 20 |ys of mo|re than |
|000010a0| 32 20 64 69 6d 65 6e 73 | 69 6f 6e 73 20 6f 72 20 |2 dimens|ions or |
|000010b0| 63 61 73 65 73 20 77 68 | 65 72 65 20 69 74 20 69 |cases wh|ere it i|
|000010c0| 73 20 62 65 74 74 65 72 | 20 74 6f 20 65 76 61 6c |s better| to eval|
|000010d0| 75 61 74 65 20 69 6e 64 | 69 76 69 64 75 61 6c 20 |uate ind|ividual |
|000010e0| 65 6c 65 6d 65 6e 74 73 | 2c 20 75 73 65 20 74 68 |elements|, use th|
|000010f0| 65 20 63 61 6c 6c 62 61 | 63 6b 73 0d 20 50 72 6f |e callba|cks. Pro|
|00001100| 62 65 45 78 70 72 28 45 | 58 50 52 20 78 70 72 2c |beExpr(E|XPR xpr,|
|00001110| 65 78 74 65 6e 64 65 64 | 20 2a 6e 75 6d 2c 42 4f |extended| *num,BO|
|00001120| 4f 4c 20 2a 69 73 61 72 | 72 61 79 2c 6c 6f 6e 67 |OL *isar|ray,long|
|00001130| 20 2a 63 6f 75 6e 74 2c | 2e 2e 2e 29 0d 20 41 64 | *count,|...). Ad|
|00001140| 64 49 6e 64 65 78 28 45 | 58 50 52 20 2a 78 70 72 |dIndex(E|XPR *xpr|
|00001150| 2c 65 78 74 65 6e 64 65 | 64 20 2a 2a 69 70 74 72 |,extende|d **iptr|
|00001160| 2c 66 75 6e 70 74 72 20 | 63 61 6c 6c 62 61 63 6b |,funptr |callback|
|00001170| 29 0d 20 45 76 61 6c 45 | 78 70 72 28 45 58 50 52 |). EvalE|xpr(EXPR|
|00001180| 20 78 70 72 2c 65 78 74 | 65 6e 64 65 64 20 2a 6e | xpr,ext|ended *n|
|00001190| 75 6d 2c 66 75 6e 70 74 | 72 20 63 61 6c 6c 62 61 |um,funpt|r callba|
|000011a0| 63 6b 29 0d 53 65 65 20 | 74 68 65 20 66 69 6c 65 |ck).See |the file|
|000011b0| 20 68 69 73 74 6f 67 72 | 61 6d 2e 63 20 66 6f 72 | histogr|am.c for|
|000011c0| 20 61 6e 20 65 78 61 6d | 70 6c 65 20 6f 66 20 61 | an exam|ple of a|
|000011d0| 6e 20 58 46 75 6e 20 74 | 68 61 74 20 6f 70 65 72 |n XFun t|hat oper|
|000011e0| 61 74 65 73 20 6f 6e 20 | 69 6e 64 69 76 69 64 75 |ates on |individu|
|000011f0| 61 6c 20 61 72 72 61 79 | 20 65 6c 65 6d 65 6e 74 |al array| element|
|00001200| 73 2e 0d 0d 58 46 75 6e | 73 20 63 61 6e 20 61 73 |s...XFun|s can as|
|00001210| 73 69 67 6e 20 61 6e 20 | 61 72 72 61 79 20 72 65 |sign an |array re|
|00001220| 73 75 6c 74 20 74 6f 20 | 61 20 67 6c 6f 62 61 6c |sult to |a global|
|00001230| 20 76 61 72 69 61 62 6c | 65 20 77 69 74 68 20 74 | variabl|e with t|
|00001240| 68 65 20 63 61 6c 6c 62 | 61 63 6b 0d 20 53 65 74 |he callb|ack. Set|
|00001250| 56 61 72 4d 61 74 72 69 | 78 28 63 68 61 72 20 2a |VarMatri|x(char *|
|00001260| 6e 61 6d 65 2c 65 78 74 | 65 6e 64 65 64 20 2a 61 |name,ext|ended *a|
|00001270| 72 72 2c 6c 6f 6e 67 20 | 72 6f 77 73 2c 6c 6f 6e |rr,long |rows,lon|
|00001280| 67 20 63 6f 6c 73 2c 2e | 2e 2e 29 0d 54 68 65 20 |g cols,.|..).The |
|00001290| 61 72 72 61 79 20 6d 75 | 73 74 20 62 65 20 61 6c |array mu|st be al|
|000012a0| 6c 6f 63 61 74 65 64 20 | 76 69 61 20 4e 65 77 50 |located |via NewP|
|000012b0| 74 72 28 29 20 61 6e 64 | 20 77 69 6c 6c 20 62 65 |tr() and| will be|
|000012c0| 20 64 65 61 6c 6c 6f 63 | 61 74 65 64 20 62 79 20 | dealloc|ated by |
|000012d0| 4d 61 74 68 50 61 64 2e | 20 46 6f 72 20 6d 6f 72 |MathPad.| For mor|
|000012e0| 65 20 74 68 61 6e 20 32 | 20 64 69 6d 65 6e 73 69 |e than 2| dimensi|
|000012f0| 6f 6e 73 20 74 68 65 20 | 63 61 6c 6c 62 61 63 6b |ons the |callback|
|00001300| 0d 20 46 6f 6c 64 56 61 | 72 28 63 68 61 72 20 2a |. FoldVa|r(char *|
|00001310| 6e 61 6d 65 2c 6c 6f 6e | 67 20 6c 69 6d 2c 66 75 |name,lon|g lim,fu|
|00001320| 6e 70 74 72 20 63 61 6c | 6c 62 61 63 6b 29 0d 63 |nptr cal|lback).c|
|00001330| 61 6e 20 62 65 20 63 61 | 6c 6c 65 64 20 61 6e 79 |an be ca|lled any|
|00001340| 20 6e 75 6d 62 65 72 20 | 6f 66 20 74 69 6d 65 73 | number |of times|
|00001350| 20 74 6f 20 61 64 64 20 | 64 69 6d 65 6e 73 69 6f | to add |dimensio|
|00001360| 6e 73 20 74 6f 20 74 68 | 65 20 61 72 72 61 79 20 |ns to th|e array |
|00001370| 6d 61 64 65 20 62 79 20 | 53 65 74 56 61 72 4d 61 |made by |SetVarMa|
|00001380| 74 72 69 78 28 29 2e 0d | 0d 41 20 73 69 6e 67 6c |trix()..|.A singl|
|00001390| 65 20 76 61 6c 75 65 20 | 63 61 6e 20 62 65 20 61 |e value |can be a|
|000013a0| 73 73 69 67 6e 65 64 20 | 74 6f 20 61 20 67 6c 6f |ssigned |to a glo|
|000013b0| 62 61 6c 20 77 69 74 68 | 20 74 68 65 20 63 61 6c |bal with| the cal|
|000013c0| 6c 62 61 63 6b 0d 20 53 | 65 74 56 61 72 56 61 6c |lback. S|etVarVal|
|000013d0| 28 63 68 61 72 20 2a 6e | 61 6d 65 2c 65 78 74 65 |(char *n|ame,exte|
|000013e0| 6e 64 65 64 20 6e 75 6d | 2c 66 75 6e 70 74 72 20 |nded num|,funptr |
|000013f0| 63 61 6c 6c 62 61 63 6b | 29 0d 0d 54 68 65 72 65 |callback|)..There|
|00001400| 20 61 72 65 20 61 6c 73 | 6f 20 63 61 6c 6c 62 61 | are als|o callba|
|00001410| 63 6b 73 20 74 6f 20 67 | 65 74 20 76 61 6c 75 65 |cks to g|et value|
|00001420| 73 20 66 72 6f 6d 20 67 | 6c 6f 62 61 6c 20 76 61 |s from g|lobal va|
|00001430| 72 69 61 62 6c 65 73 2e | 0d 20 47 65 74 56 61 72 |riables.|. GetVar|
|00001440| 56 61 6c 28 63 68 61 72 | 20 2a 6e 61 6d 65 2c 65 |Val(char| *name,e|
|00001450| 78 74 65 6e 64 65 64 20 | 2a 6e 75 6d 2c 66 75 6e |xtended |*num,fun|
|00001460| 70 74 72 20 63 61 6c 6c | 62 61 63 6b 29 0d 20 4d |ptr call|back). M|
|00001470| 61 6b 65 56 61 72 45 78 | 70 72 28 63 68 61 72 20 |akeVarEx|pr(char |
|00001480| 2a 6e 61 6d 65 2c 45 58 | 50 52 20 2a 78 70 72 2c |*name,EX|PR *xpr,|
|00001490| 66 75 6e 70 74 72 20 63 | 61 6c 6c 62 61 63 6b 29 |funptr c|allback)|
|000014a0| 0d 0d 58 46 75 6e 73 20 | 63 61 6e 20 62 65 20 73 |..XFuns |can be s|
|000014b0| 65 74 20 75 70 20 74 6f | 20 72 65 74 75 72 6e 20 |et up to| return |
|000014c0| 61 72 72 61 79 73 20 64 | 69 72 65 63 74 6c 79 2e |arrays d|irectly.|
|000014d0| 20 41 20 70 72 65 64 65 | 66 20 72 6f 75 74 69 6e | A prede|f routin|
|000014e0| 65 20 6d 75 73 74 20 62 | 65 20 75 73 65 64 2e 20 |e must b|e used. |
|000014f0| 54 68 65 20 63 61 6c 6c | 62 61 63 6b 0d 20 41 64 |The call|back. Ad|
|00001500| 64 46 75 6e 44 69 6d 28 | 63 68 61 72 20 2a 6e 61 |dFunDim(|char *na|
|00001510| 6d 65 2c 6c 6f 6e 67 20 | 6c 69 6d 2c 66 75 6e 70 |me,long |lim,funp|
|00001520| 74 72 20 63 61 6c 6c 62 | 61 63 6b 29 0d 63 61 6e |tr callb|ack).can|
|00001530| 20 62 65 20 63 61 6c 6c | 65 64 20 66 72 6f 6d 20 | be call|ed from |
|00001540| 74 68 65 20 70 72 65 64 | 65 66 20 72 6f 75 74 69 |the pred|ef routi|
|00001550| 6e 65 20 74 6f 20 74 65 | 6c 6c 20 4d 61 74 68 50 |ne to te|ll MathP|
|00001560| 61 64 20 74 68 61 74 20 | 74 68 65 20 6e 61 6d 65 |ad that |the name|
|00001570| 64 20 58 46 75 6e 20 77 | 69 6c 6c 20 70 72 6f 63 |d XFun w|ill proc|
|00001580| 65 73 73 20 69 6e 64 65 | 78 20 76 61 6c 75 65 73 |ess inde|x values|
|00001590| 2e 20 41 64 64 46 75 6e | 44 69 6d 28 29 20 63 61 |. AddFun|Dim() ca|
|000015a0| 6e 20 62 65 20 63 61 6c | 6c 65 64 20 6d 75 6c 74 |n be cal|led mult|
|000015b0| 69 70 6c 65 20 74 69 6d | 65 73 20 74 6f 20 73 65 |iple tim|es to se|
|000015c0| 74 75 70 20 61 20 6d 75 | 6c 74 69 64 69 6d 65 6e |tup a mu|ltidimen|
|000015d0| 73 69 6f 6e 61 6c 20 66 | 75 6e 63 74 69 6f 6e 2e |sional f|unction.|
|000015e0| 20 57 68 65 6e 20 74 68 | 65 20 58 46 75 6e 20 69 | When th|e XFun i|
|000015f0| 73 20 63 61 6c 6c 65 64 | 2c 20 65 61 63 68 20 64 |s called|, each d|
|00001600| 69 6d 65 6e 73 69 6f 6e | 20 61 70 70 65 6e 64 73 |imension| appends|
|00001610| 20 61 6e 20 69 6e 64 65 | 78 20 76 61 6c 75 65 20 | an inde|x value |
|00001620| 74 6f 20 74 68 65 20 61 | 63 74 75 61 6c 20 70 61 |to the a|ctual pa|
|00001630| 72 61 6d 65 74 65 72 20 | 6c 69 73 74 2e 20 54 68 |rameter |list. Th|
|00001640| 65 20 69 6e 64 65 78 20 | 76 61 6c 75 65 73 20 61 |e index |values a|
|00001650| 72 65 20 61 63 63 65 73 | 73 65 64 20 76 69 61 20 |re acces|sed via |
|00001660| 47 65 74 50 61 72 6d 56 | 61 6c 28 29 2e 20 41 6e |GetParmV|al(). An|
|00001670| 20 22 61 72 72 61 79 22 | 20 66 75 6e 63 74 69 6f | "array"| functio|
|00001680| 6e 20 6d 75 73 74 20 63 | 6f 6d 70 75 74 65 20 69 |n must c|ompute i|
|00001690| 74 73 20 72 65 74 75 72 | 6e 20 76 61 6c 75 65 20 |ts retur|n value |
|000016a0| 62 61 73 65 64 20 6f 6e | 20 74 68 65 20 69 6e 64 |based on| the ind|
|000016b0| 65 78 2e 20 4d 61 74 68 | 50 61 64 20 6f 6e 6c 79 |ex. Math|Pad only|
|000016c0| 20 65 76 61 6c 75 61 74 | 65 73 20 74 68 65 20 65 | evaluat|es the e|
|000016d0| 6c 65 6d 65 6e 74 73 20 | 74 68 61 74 20 69 74 20 |lements |that it |
|000016e0| 6e 65 65 64 73 20 61 6e | 64 20 74 68 65 72 65 20 |needs an|d there |
|000016f0| 61 72 65 20 6e 6f 20 67 | 75 61 72 61 6e 74 65 65 |are no g|uarantee|
|00001700| 73 20 61 73 20 74 6f 20 | 77 68 69 63 68 20 65 6c |s as to |which el|
|00001710| 65 6d 65 6e 74 73 20 77 | 69 6c 6c 20 62 65 20 65 |ements w|ill be e|
|00001720| 76 61 6c 75 61 74 65 64 | 20 6f 72 20 77 68 61 74 |valuated| or what|
|00001730| 20 6f 72 64 65 72 20 74 | 68 65 79 20 61 72 65 20 | order t|hey are |
|00001740| 65 76 61 6c 75 61 74 65 | 64 20 69 6e 2e 20 53 65 |evaluate|d in. Se|
|00001750| 65 20 74 68 65 20 65 78 | 61 6d 70 6c 65 20 22 63 |e the ex|ample "c|
|00001760| 72 6f 73 73 2e 63 22 0d | 0d 45 78 65 63 75 74 69 |ross.c".|.Executi|
|00001770| 6f 6e 20 6f 66 20 74 68 | 65 20 58 46 75 6e 20 69 |on of th|e XFun i|
|00001780| 73 20 6e 6f 74 20 69 6e | 74 65 72 72 75 70 74 61 |s not in|terrupta|
|00001790| 62 6c 65 2e 20 49 66 20 | 74 68 65 20 63 61 6c 63 |ble. If |the calc|
|000017a0| 75 6c 61 74 69 6f 6e 20 | 63 61 6e 20 74 61 6b 65 |ulation |can take|
|000017b0| 20 61 20 6c 6f 6e 67 20 | 74 69 6d 65 2c 20 74 68 | a long |time, th|
|000017c0| 65 20 63 61 6c 6c 62 61 | 63 6b 0d 20 53 70 69 6e |e callba|ck. Spin|
|000017d0| 57 61 74 63 68 28 66 75 | 6e 70 74 72 20 63 61 6c |Watch(fu|nptr cal|
|000017e0| 6c 62 61 63 6b 29 0d 73 | 68 6f 75 6c 64 20 62 65 |lback).s|hould be|
|000017f0| 20 75 73 65 64 20 74 6f | 20 61 6c 6c 6f 77 20 63 | used to| allow c|
|00001800| 6f 6d 70 75 74 61 74 69 | 6f 6e 20 74 6f 20 62 65 |omputati|on to be|
|00001810| 20 73 77 69 74 63 68 65 | 64 20 74 6f 20 62 61 63 | switche|d to bac|
|00001820| 6b 67 72 6f 75 6e 64 20 | 6f 72 20 73 74 6f 70 70 |kground |or stopp|
|00001830| 65 64 20 76 69 61 20 63 | 6f 6d 6d 61 6e 64 20 70 |ed via c|ommand p|
|00001840| 65 72 69 6f 64 2e 20 49 | 66 20 63 6f 6d 6d 61 6e |eriod. I|f comman|
|00001850| 64 20 70 65 72 69 6f 64 | 20 77 61 73 20 68 69 74 |d period| was hit|
|00001860| 2c 20 53 70 69 6e 57 61 | 74 63 68 28 29 20 77 69 |, SpinWa|tch() wi|
|00001870| 6c 6c 20 73 65 74 20 74 | 68 65 20 73 74 6f 70 20 |ll set t|he stop |
|00001880| 66 6c 61 67 2e 20 54 68 | 65 20 73 74 61 74 65 20 |flag. Th|e state |
|00001890| 6f 66 20 74 68 69 73 20 | 66 6c 61 67 20 63 61 6e |of this |flag can|
|000018a0| 20 62 65 20 63 68 65 63 | 6b 65 64 20 77 69 74 68 | be chec|ked with|
|000018b0| 20 74 68 65 20 63 61 6c | 6c 62 61 63 6b 0d 20 53 | the cal|lback. S|
|000018c0| 74 6f 70 70 65 64 28 66 | 75 6e 70 74 72 20 63 61 |topped(f|unptr ca|
|000018d0| 6c 6c 62 61 63 6b 29 0d | 54 68 65 20 73 74 6f 70 |llback).|The stop|
|000018e0| 20 66 6c 61 67 20 6d 61 | 79 20 61 6c 73 6f 20 62 | flag ma|y also b|
|000018f0| 65 20 73 65 74 20 69 66 | 20 74 68 65 72 65 20 69 |e set if| there i|
|00001900| 73 20 61 20 73 65 76 65 | 72 65 20 65 72 72 6f 72 |s a seve|re error|
|00001910| 20 77 68 65 6e 20 65 76 | 61 6c 75 61 74 69 6e 67 | when ev|aluating|
|00001920| 20 61 20 4d 61 74 68 50 | 61 64 20 65 78 70 72 65 | a MathP|ad expre|
|00001930| 73 73 69 6f 6e 2e 20 53 | 74 6f 70 70 65 64 28 29 |ssion. S|topped()|
|00001940| 20 73 68 6f 75 6c 64 20 | 62 65 20 63 68 65 63 6b | should |be check|
|00001950| 65 64 20 69 66 20 45 76 | 61 6c 45 78 70 72 28 29 |ed if Ev|alExpr()|
|00001960| 20 69 73 20 63 61 6c 6c | 65 64 20 69 6e 20 61 20 | is call|ed in a |
|00001970| 6c 6f 6f 70 2e 20 4f 6e | 63 65 20 74 68 65 20 73 |loop. On|ce the s|
|00001980| 74 6f 70 20 66 6c 61 67 | 20 69 73 20 73 65 74 2c |top flag| is set,|
|00001990| 20 61 6e 79 20 61 74 74 | 65 6d 70 74 20 74 6f 20 | any att|empt to |
|000019a0| 65 76 61 6c 75 61 74 65 | 20 61 20 4d 61 74 68 50 |evaluate| a MathP|
|000019b0| 61 64 20 65 78 70 72 65 | 73 73 69 6f 6e 20 77 69 |ad expre|ssion wi|
|000019c0| 6c 6c 20 69 6d 6d 65 64 | 69 61 74 65 6c 79 20 72 |ll immed|iately r|
|000019d0| 65 74 75 72 6e 20 66 61 | 6c 73 65 2e 20 0d 0d 54 |eturn fa|lse. ..T|
|000019e0| 68 65 20 63 61 6c 6c 62 | 61 63 6b 0d 20 45 72 72 |he callb|ack. Err|
|000019f0| 4d 73 67 28 63 68 61 72 | 20 2a 66 6d 74 2c 63 68 |Msg(char| *fmt,ch|
|00001a00| 61 72 20 2a 73 74 72 2c | 66 75 6e 70 74 72 20 63 |ar *str,|funptr c|
|00001a10| 61 6c 6c 62 61 63 6b 29 | 0d 67 69 76 65 73 20 61 |allback)|.gives a|
|00001a20| 6e 20 65 72 72 6f 72 20 | 6d 65 73 73 61 67 65 20 |n error |message |
|00001a30| 66 6f 72 20 74 68 65 20 | 73 74 61 74 75 73 20 6c |for the |status l|
|00001a40| 69 6e 65 2e 20 43 61 6c | 6c 69 6e 67 20 45 72 72 |ine. Cal|ling Err|
|00001a50| 4d 73 67 28 29 20 73 65 | 74 73 20 74 68 65 20 73 |Msg() se|ts the s|
|00001a60| 74 6f 70 20 66 6c 61 67 | 20 61 6e 64 20 77 69 6c |top flag| and wil|
|00001a70| 6c 20 63 61 75 73 65 20 | 4d 61 74 68 50 61 64 20 |l cause |MathPad |
|00001a80| 74 6f 20 73 74 6f 70 20 | 65 76 61 6c 75 61 74 69 |to stop |evaluati|
|00001a90| 6f 6e 20 77 68 65 6e 20 | 74 68 65 20 58 66 75 6e |on when |the Xfun|
|00001aa0| 20 72 65 74 75 72 6e 73 | 2e 0d 0d 41 6e 79 20 6d | returns|...Any m|
|00001ab0| 65 6d 6f 72 79 20 61 6c | 6c 6f 63 61 74 65 64 20 |emory al|located |
|00001ac0| 62 79 20 74 68 65 20 58 | 46 75 6e 20 73 68 6f 75 |by the X|Fun shou|
|00001ad0| 6c 64 20 62 65 20 64 65 | 61 6c 6c 6f 63 61 74 65 |ld be de|allocate|
|00001ae0| 64 20 62 65 66 6f 72 65 | 20 72 65 74 75 72 6e 69 |d before| returni|
|00001af0| 6e 67 2e 20 54 68 69 73 | 20 61 70 70 6c 69 65 73 |ng. This| applies|
|00001b00| 20 74 6f 20 65 72 72 6f | 72 20 72 65 74 75 72 6e | to erro|r return|
|00001b10| 73 20 61 73 20 77 65 6c | 6c 20 61 73 20 74 68 65 |s as wel|l as the|
|00001b20| 20 6e 6f 72 6d 61 6c 20 | 72 65 74 75 72 6e 2e 0d | normal |return..|
|00001b30| a5 20 45 78 70 72 65 73 | 73 69 6f 6e 20 73 74 72 |. Expres|sion str|
|00001b40| 75 63 74 75 72 65 73 20 | 61 6c 6c 6f 63 61 74 65 |uctures |allocate|
|00001b50| 64 20 62 79 20 4d 61 6b | 65 50 61 72 6d 45 78 70 |d by Mak|eParmExp|
|00001b60| 72 28 29 20 6f 72 20 4d | 61 6b 65 56 61 72 45 78 |r() or M|akeVarEx|
|00001b70| 70 72 28 29 20 6d 75 73 | 74 20 62 65 20 64 65 61 |pr() mus|t be dea|
|00001b80| 6c 6c 6f 63 61 74 65 64 | 20 62 79 20 46 72 65 65 |llocated| by Free|
|00001b90| 45 78 70 72 28 29 2e 20 | 0d a5 20 4d 61 74 68 50 |Expr(). |.. MathP|
|00001ba0| 61 64 20 61 6c 6c 6f 63 | 61 74 65 73 20 6d 65 6d |ad alloc|ates mem|
|00001bb0| 6f 72 79 20 66 6f 72 20 | 74 68 65 20 6d 61 74 72 |ory for |the matr|
|00001bc0| 69 78 20 72 65 74 75 72 | 6e 65 64 20 62 79 20 47 |ix retur|ned by G|
|00001bd0| 65 74 45 78 70 72 4d 61 | 74 72 69 78 28 29 2e 20 |etExprMa|trix(). |
|00001be0| 54 68 65 20 58 66 75 6e | 20 6d 75 73 74 20 64 65 |The Xfun| must de|
|00001bf0| 61 6c 6c 6f 63 61 74 65 | 20 69 74 20 77 69 74 68 |allocate| it with|
|00001c00| 20 74 68 65 20 74 6f 6f | 6c 62 6f 78 20 63 61 6c | the too|lbox cal|
|00001c10| 6c 20 44 69 73 70 6f 73 | 50 74 72 28 29 2e 0d a5 |l Dispos|Ptr()...|
|00001c20| 20 41 72 72 61 79 73 20 | 61 6c 6c 6f 63 61 74 65 | Arrays |allocate|
|00001c30| 64 20 61 6e 64 20 70 61 | 73 73 65 64 20 74 6f 20 |d and pa|ssed to |
|00001c40| 53 65 74 56 61 72 4d 61 | 74 72 69 78 28 29 20 77 |SetVarMa|trix() w|
|00001c50| 69 6c 6c 20 62 65 20 64 | 65 61 6c 6c 6f 63 61 74 |ill be d|eallocat|
|00001c60| 65 64 20 62 79 20 4d 61 | 74 68 50 61 64 20 61 6e |ed by Ma|thPad an|
|00001c70| 64 20 73 68 6f 75 6c 64 | 20 4e 4f 54 20 62 65 20 |d should| NOT be |
|00001c80| 64 65 61 6c 6c 6f 63 61 | 74 65 64 20 62 79 20 74 |dealloca|ted by t|
|00001c90| 68 65 20 58 46 75 6e 2e | 0d 0d 4d 6f 72 65 20 74 |he XFun.|..More t|
|00001ca0| 68 61 6e 20 6f 6e 65 20 | 58 46 75 6e 20 63 61 6e |han one |XFun can|
|00001cb0| 20 62 65 20 64 65 66 69 | 6e 65 64 20 69 6e 20 61 | be defi|ned in a|
|00001cc0| 20 73 69 6e 67 6c 65 20 | 58 66 75 6e 20 66 69 6c | single |Xfun fil|
|00001cd0| 65 2e 20 4d 75 6c 74 69 | 70 6c 65 20 66 75 6e 63 |e. Multi|ple func|
|00001ce0| 74 69 6f 6e 73 20 63 61 | 6e 20 62 65 20 69 6e 73 |tions ca|n be ins|
|00001cf0| 74 61 6c 6c 65 64 20 66 | 72 6f 6d 20 61 20 73 69 |talled f|rom a si|
|00001d00| 6e 67 6c 65 20 72 65 73 | 6f 75 72 63 65 20 62 79 |ngle res|ource by|
|00001d10| 20 63 61 6c 6c 69 6e 67 | 20 41 64 64 58 66 75 6e | calling| AddXfun|
|00001d20| 28 29 20 66 6f 72 20 65 | 61 63 68 20 66 75 6e 63 |() for e|ach func|
|00001d30| 74 69 6f 6e 2e 20 49 74 | 20 69 73 20 61 6c 73 6f |tion. It| is also|
|00001d40| 20 61 6c 6c 6f 77 61 62 | 6c 65 20 74 6f 20 70 75 | allowab|le to pu|
|00001d50| 74 20 6d 6f 72 65 20 74 | 68 61 6e 20 6f 6e 65 20 |t more t|han one |
|00001d60| 27 58 46 75 6e 27 20 72 | 65 73 6f 75 72 63 65 20 |'XFun' r|esource |
|00001d70| 69 6e 74 6f 20 61 20 73 | 69 6e 67 6c 65 20 58 66 |into a s|ingle Xf|
|00001d80| 75 6e 20 66 69 6c 65 2e | 20 52 65 73 6f 75 72 63 |un file.| Resourc|
|00001d90| 65 20 49 44 73 20 64 6f | 20 6e 6f 74 20 6d 61 74 |e IDs do| not mat|
|00001da0| 74 65 72 20 28 61 73 20 | 6c 6f 6e 67 20 61 73 20 |ter (as |long as |
|00001db0| 74 68 65 79 20 61 72 65 | 20 75 6e 69 71 75 65 29 |they are| unique)|
|00001dc0| 2e 0d 0d 54 68 65 20 58 | 46 75 6e 20 72 65 73 6f |...The X|Fun reso|
|00001dd0| 75 72 63 65 20 66 69 6c | 65 20 69 73 20 6f 6e 6c |urce fil|e is onl|
|00001de0| 79 20 6f 70 65 6e 20 64 | 75 72 69 6e 67 20 4d 61 |y open d|uring Ma|
|00001df0| 74 68 50 61 64 20 73 74 | 61 72 74 75 70 2e 20 54 |thPad st|artup. T|
|00001e00| 68 69 73 20 6d 65 61 6e | 73 20 74 68 61 74 20 58 |his mean|s that X|
|00001e10| 46 75 6e 73 20 63 61 6e | 20 6e 6f 74 20 75 73 65 |Funs can| not use|
|00001e20| 20 70 72 69 76 61 74 65 | 20 72 65 73 6f 75 72 63 | private| resourc|
|00001e30| 65 73 20 73 69 6d 70 6c | 79 20 62 79 20 61 64 64 |es simpl|y by add|
|00001e40| 69 6e 67 20 74 68 65 6d | 20 74 6f 20 74 68 65 20 |ing them| to the |
|00001e50| 58 46 75 6e 20 66 69 6c | 65 2e 20 41 6e 79 20 72 |XFun fil|e. Any r|
|00001e60| 65 73 6f 75 72 63 65 73 | 20 69 6e 20 74 68 65 20 |esources| in the |
|00001e70| 58 46 75 6e 20 66 69 6c | 65 20 77 6f 75 6c 64 20 |XFun fil|e would |
|00001e80| 62 65 20 61 76 61 69 6c | 61 62 6c 65 20 64 75 72 |be avail|able dur|
|00001e90| 69 6e 67 20 74 68 65 20 | 63 61 6c 6c 20 74 6f 20 |ing the |call to |
|00001ea0| 6d 61 69 6e 28 29 20 62 | 75 74 20 6e 6f 74 20 64 |main() b|ut not d|
|00001eb0| 75 72 69 6e 67 20 74 68 | 65 20 63 61 6c 6c 20 74 |uring th|e call t|
|00001ec0| 6f 20 74 68 65 20 66 75 | 6e 63 74 69 6f 6e 20 69 |o the fu|nction i|
|00001ed0| 74 73 65 6c 66 2e 20 54 | 68 65 20 6d 61 69 6e 28 |tself. T|he main(|
|00001ee0| 29 20 72 6f 75 74 69 6e | 65 20 63 6f 75 6c 64 20 |) routin|e could |
|00001ef0| 6c 6f 61 64 20 72 65 73 | 6f 75 72 63 65 73 20 61 |load res|ources a|
|00001f00| 6e 64 20 64 65 74 61 63 | 68 20 74 68 65 6d 2e 0d |nd detac|h them..|
|00001f10| 0d 41 64 64 69 6e 67 20 | 58 46 75 6e 73 20 75 73 |.Adding |XFuns us|
|00001f20| 65 73 20 75 70 20 6d 65 | 6d 6f 72 79 20 73 6f 20 |es up me|mory so |
|00001f30| 4d 61 74 68 50 61 64 27 | 73 20 73 69 7a 65 20 73 |MathPad'|s size s|
|00001f40| 68 6f 75 6c 64 20 62 65 | 20 69 6e 63 72 65 61 73 |hould be| increas|
|00001f50| 65 64 20 61 70 70 72 6f | 70 72 69 61 74 65 6c 79 |ed appro|priately|
|00001f60| 2e 20 41 64 64 69 6e 67 | 20 58 46 75 6e 73 20 77 |. Adding| XFuns w|
|00001f70| 69 6c 6c 20 63 6f 73 74 | 20 61 74 20 6c 65 61 73 |ill cost| at leas|
|00001f80| 74 20 32 4b 20 70 6c 75 | 73 20 74 68 65 20 73 69 |t 2K plu|s the si|
|00001f90| 7a 65 20 6f 66 20 74 68 | 65 20 61 64 64 65 64 20 |ze of th|e added |
|00001fa0| 63 6f 64 65 2c 20 70 6c | 75 73 20 74 68 65 20 73 |code, pl|us the s|
|00001fb0| 69 7a 65 20 6f 66 20 61 | 6c 6c 20 61 64 64 65 64 |ize of a|ll added|
|00001fc0| 20 68 65 6c 70 20 27 54 | 45 58 54 27 20 72 65 73 | help 'T|EXT' res|
|00001fd0| 6f 75 72 63 65 73 0d 0d | 54 68 65 20 54 68 69 6e |ources..|The Thin|
|00001fe0| 6b 20 43 20 73 75 70 70 | 6c 69 65 64 20 75 74 69 |k C supp|lied uti|
|00001ff0| 6c 69 74 69 65 73 20 52 | 65 6d 65 6d 62 65 72 41 |lities R|ememberA|
|00002000| 30 28 29 2c 20 53 65 74 | 55 70 41 34 28 29 20 61 |0(), Set|UpA4() a|
|00002010| 6e 64 20 52 65 73 74 6f | 72 65 41 34 28 29 20 6f |nd Resto|reA4() o|
|00002020| 72 20 73 6f 6d 65 74 68 | 69 6e 67 20 65 71 75 69 |r someth|ing equi|
|00002030| 76 61 6c 65 6e 74 20 6d | 75 73 74 20 62 65 20 75 |valent m|ust be u|
|00002040| 73 65 64 20 74 6f 20 68 | 61 6e 64 6c 65 20 61 63 |sed to h|andle ac|
|00002050| 63 65 73 73 69 6e 67 20 | 73 74 61 74 69 63 20 76 |cessing |static v|
|00002060| 61 72 69 61 62 6c 65 73 | 20 77 69 74 68 69 6e 20 |ariables| within |
|00002070| 61 20 63 6f 64 65 20 72 | 65 73 6f 75 72 63 65 2e |a code r|esource.|
|00002080| 20 52 65 61 64 20 74 68 | 65 20 63 6f 6d 70 69 6c | Read th|e compil|
|00002090| 65 72 20 6d 61 6e 75 61 | 6c 20 63 61 72 65 66 75 |er manua|l carefu|
|000020a0| 6c 6c 79 20 61 62 6f 75 | 74 20 74 68 65 20 64 65 |lly abou|t the de|
|000020b0| 74 61 69 6c 73 20 6f 66 | 20 68 6f 77 20 74 6f 20 |tails of| how to |
|000020c0| 63 6f 6d 70 69 6c 65 20 | 63 6f 64 65 20 72 65 73 |compile |code res|
|000020d0| 6f 75 72 63 65 73 2e 20 | 49 6e 20 54 68 69 6e 6b |ources. |In Think|
|000020e0| 20 43 20 35 2e 30 2c 20 | 61 6e 79 20 6c 69 62 72 | C 5.0, |any libr|
|000020f0| 61 72 69 65 73 20 75 73 | 65 64 20 6d 75 73 74 20 |aries us|ed must |
|00002100| 62 65 20 63 6f 6d 70 69 | 6c 65 64 20 66 6f 72 20 |be compi|led for |
|00002110| 41 34 20 67 6c 6f 62 61 | 6c 73 2e 0d 0d 4d 61 74 |A4 globa|ls...Mat|
|00002120| 68 50 61 64 20 75 73 65 | 73 20 53 41 4e 45 20 38 |hPad use|s SANE 8|
|00002130| 30 2d 62 69 74 20 66 6c | 6f 61 74 69 6e 67 20 70 |0-bit fl|oating p|
|00002140| 6f 69 6e 74 20 6e 75 6d | 62 65 72 73 2e 20 54 68 |oint num|bers. Th|
|00002150| 65 20 65 78 61 6d 70 6c | 65 20 70 72 6f 6a 65 63 |e exampl|e projec|
|00002160| 74 73 20 68 61 76 65 20 | 54 68 69 6e 6b 20 43 20 |ts have |Think C |
|00002170| 73 65 74 20 66 6f 72 20 | 22 4e 61 74 69 76 65 20 |set for |"Native |
|00002180| 66 6c 6f 61 74 69 6e 67 | 2d 70 6f 69 6e 74 20 66 |floating|-point f|
|00002190| 6f 72 6d 61 74 22 20 4f | 4e 20 61 6e 64 20 22 67 |ormat" O|N and "g|
|000021a0| 65 6e 65 72 61 74 65 20 | 36 38 38 38 31 20 69 6e |enerate |68881 in|
|000021b0| 73 74 72 75 63 74 69 6f | 6e 73 22 20 4f 46 46 2e |structio|ns" OFF.|
|000021c0| 20 54 68 65 20 74 79 70 | 65 73 20 22 65 78 74 65 | The typ|es "exte|
|000021d0| 6e 64 65 64 22 20 61 6e | 64 20 22 64 6f 75 62 6c |nded" an|d "doubl|
|000021e0| 65 22 20 61 72 65 20 62 | 6f 74 68 20 38 30 2d 62 |e" are b|oth 80-b|
|000021f0| 69 74 2e 20 41 6e 20 58 | 46 75 6e 20 63 6f 75 6c |it. An X|Fun coul|
|00002200| 64 20 75 73 65 20 73 6f | 6d 65 20 6f 74 68 65 72 |d use so|me other|
|00002210| 20 66 6f 72 6d 61 74 20 | 69 6e 74 65 72 6e 61 6c | format |internal|
|00002220| 6c 79 20 61 6e 64 20 63 | 6f 6e 76 65 72 74 20 74 |ly and c|onvert t|
|00002230| 6f 20 38 30 2d 62 69 74 | 20 22 65 78 74 65 6e 64 |o 80-bit| "extend|
|00002240| 65 64 22 20 66 6f 72 20 | 63 61 6c 6c 62 61 63 6b |ed" for |callback|
|00002250| 20 70 61 72 61 6d 65 74 | 65 72 73 2e 0d 0d 2d 2d | paramet|ers...--|
|00002260| 20 53 65 6e 64 20 63 6f | 6d 6d 65 6e 74 73 2c 20 | Send co|mments, |
|00002270| 71 75 65 73 74 69 6f 6e | 73 2c 20 73 75 67 67 65 |question|s, sugge|
|00002280| 73 74 69 6f 6e 73 20 61 | 6e 64 20 62 75 67 20 72 |stions a|nd bug r|
|00002290| 65 70 6f 72 74 73 20 74 | 6f 3a 0d 0d 2d 2d 20 20 |eports t|o:..-- |
|000022a0| 20 20 20 20 20 4d 61 72 | 6b 2e 57 69 64 68 6f 6c | Mar|k.Widhol|
|000022b0| 6d 40 55 4e 48 2e 65 64 | 75 0d 00 00 00 00 00 00 |m@UNH.ed|u.......|
|000022c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000022d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000022e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000022f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002300| 00 00 01 00 00 00 01 3c | 00 00 00 3c 00 00 00 52 |.......<|...<...R|
|00002310| 6b 67 72 6f 75 6e 64 20 | 6f 72 20 73 74 6f 70 70 |kground |or stopp|
|00002320| 65 64 20 76 69 61 20 63 | 6f 6d 6d 61 6e 64 20 70 |ed via c|ommand p|
|00002330| 08 58 46 75 6e 2e 64 6f | 63 00 02 00 00 00 54 45 |.XFun.do|c.....TE|
|00002340| 58 54 4d 50 61 64 01 00 | 00 00 00 00 00 00 00 00 |XTMPad..|........|
|00002350| 00 00 54 45 58 54 4d 50 | 61 64 01 00 00 00 00 00 |..TEXTMP|ad......|
|00002360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002370| 00 00 a9 fd 47 5a 00 00 | 22 3a 00 00 01 8e 20 2d |....GZ..|":.... -|
|00002380| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 20 66 75 6e |--------|---- fun|
|00002390| 63 74 69 6f 6e 20 70 61 | 72 61 6d 65 74 65 72 20 |ction pa|rameter |
|000023a0| 61 63 63 65 73 73 20 2d | 2d 2d 2d 2d 2d 2d 2d 2d |access -|--------|
|000023b0| 2d 2d 2d 2d 2d 2d 2d 20 | 2a 2f 0d 2f 2a 20 50 61 |------- |*/./* Pa|
|000023c0| 72 61 6d 65 74 65 72 73 | 20 61 72 65 20 6e 75 6d |rameters| are num|
|000023d0| 62 65 72 65 64 20 66 72 | 6f 6d 20 72 69 67 68 74 |bered fr|om right|
|000023e0| 20 74 6f 20 6c 65 66 74 | 20 73 74 61 72 74 69 6e | to left| startin|
|000023f0| 67 20 61 74 20 30 20 2a | 2f 0d 0d 65 78 74 65 72 |g at 0 *|/..exter|
|00002400| 00 00 00 20 01 00 00 03 | 00 02 3f f9 8e fa 35 12 |... ....|..?...5.|
|00002410| 94 e9 c8 ae 01 cf 01 23 | 00 03 00 28 01 06 01 2c |.......#|...(...,|
|00002420| 00 f8 00 28 00 00 00 14 | 00 04 06 4d 6f 6e 61 63 |...(....|...Monac|
|00002430| 6f 01 39 06 4d 6f 6e 61 | 63 6f 01 39 00 00 01 00 |o.9.Mona|co.9....|
|00002440| 00 00 01 3c 00 00 00 3c | 00 00 00 52 00 2c 63 14 |...<...<|...R.,c.|
|00002450| 05 84 00 00 00 1c 00 46 | 00 01 50 52 65 66 00 00 |.......F|..PRef..|
|00002460| 00 12 53 54 52 23 00 00 | 00 1e 00 80 ff ff 00 00 |..STR#..|........|
|00002470| 00 00 00 2c 62 70 00 81 | 00 00 00 00 00 24 00 2c |...,bp..|.....$.,|
|00002480| 62 2c 0b 66 6f 6e 74 20 | 26 20 73 69 7a 65 00 00 |b,.font |& size..|
|00002490| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000024f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+